package com.ftg.learn.chapter12;

public class Test1 {

    /**
     * 7.如下字符串,01#张三#20-02#李四#30-03#王五#40。。。。。。,解析每个人分数多少。样式如下：
     * 01 张三 20
     * 02 李四 30
     * 03 王五 40。并且计算总分。
     */
    public void qi(String str){
        String[] s = str.split("-");
        for(String a:s){
            System.out.println(a);
        }
        String[] s1 = s[0].split("#");
        String[] s2 = s[1].split("#");
        String[] s3 = s[2].split("#");
        String num = s1[s1.length-1]+"-"+s2[s2.length-1]+"-"+s3[s3.length-1];
        System.out.println(num.toString());
        String[] s4 = num.split("-");
        int sum = 0;
        for(int i = 0;i < s4.length;i++){
            sum += Integer.valueOf(s4[i]);
        }
        System.out.println("三人的总成绩为："+sum);
    }

    /**
     * 8.定义一个方法，将str所指字符串的正序和反序进行连接,例如 "ok"->"okko"
     */
    public void ba(StringBuffer str){
        StringBuffer str1 = new StringBuffer("ok");
        str.append(str1.reverse());
        System.out.println(str);
    }

    /**
     * 3.判断输入的字符串是否是 .java 结束
      */
    public void san(String str){
        String str1 = ".java";
        System.out.println(str1.equals(str.substring(str.indexOf("."))));
    }

    /**
     * 4.有一身份证号,判断此为男还是女,基于此方法,写一个算法,判断一个身份证号为男还是女。
     * （身份证分15位和18位），身份证倒数第二位为性别，奇数是男，偶数是女
     */
    public String si(String str){
        if(str.length()==18){
            if(Integer.valueOf(str.substring(16,17))%2==0){
                System.out.println("女");
            }else {
                System.out.println("男");
            }

        }
        if(str.length()==15){
            if(Integer.valueOf(str.substring(13,14))%2==0){
                System.out.println("女");
            }else {
                System.out.println("男");
            }
        }
        return "输入错误";
    }

    /**
     *6.求出字符串中有多少种字符，以及每个字符的个数
     * static void printCharInfo(String str)
     * 例如有字符串 str="apple is a apple.";
     * 结果应该是
     * a:3  p:4 l:2 e:2  空格:3  i:1  s:1 .:1
     */
    public void liu(String str){
        char[] a = str.toCharArray();
        int sum = 0;//字符有多少种
        for(int i = 0;i<a.length;i++){
            int n = 0; //个数
            int index = 0;//下标
            while ((index = str.indexOf(a[i],index)) != -1){
                n++;
                index++;
            }
            if(str.indexOf(a[i],i+1) == -1){
                sum++;
                System.out.println(a[i]+"有"+n+"个");
            }
        }
        System.out.println("共有"+sum+"种");
    }

    /**
     * 5.有如下格式的字符串name-age-sex-address,解析出姓名,年龄等信息。
     *          str.split("#");
     */

    /**
     * 2."那车水马龙的人世间,那样地来 那样地去,太匆忙"最后一次出现"那"的位置。
     *      str.lastIndex("那");
     */

    /**
     * 1.字符串解析,现有一字符串,"卡巴斯基#杀毒软件#免费版#俄罗斯#",解析出每个元素。
     *         str.split("#");
     */
    public static void test(StringBuilder t){
        t.append("sss");
    }

    public static void main(String[] args) {
        StringBuilder abc = new StringBuilder("ttt");
        test(abc);
        System.out.println(abc);
        Integer s = 145;
        Integer s1 = 145;
        System.out.println(s == s1);
    }

}
